Image processing apparatus, image processing method, and storage medium

ABSTRACT

An image processing apparatus includes an obtainment unit configured to obtain first image data obtained by capturing an image of an object, a generation unit configured to generate second image data representing a second image by performing conversion to maintain a specific gradation in a color saturation range in a case where a hue or color saturation of a region of interest in a first image represented by the first image data is converted according to a characteristic of a display unit, a conversion unit configured to perform conversion on the first image and the second image according to the characteristic of the display unit, and a display control unit configured to display the converted first image and the converted second image together on the display unit.

BACKGROUND Field of the Disclosure

The present disclosure relates to an image processing technique for evaluating color of an object.

Description of the Related Art

There is a technique for evaluating a color difference between two points on an object using image data obtained by capturing an image of the object by a camera. Japanese Patent Application Laid-Open No. 2017-229064 discusses a technique for calculating a color difference between evaluation points designated on a displayed image.

However, an image to be displayed on a display apparatus is generated in such a manner that high saturation color which cannot be expressed by the display apparatus is compressed and converted into a color gamut which can be expressed by the display apparatus. Therefore, in some cases, a user may need to designate a region to be subjected to color evaluation while referring to an image having a gradation of color saturation significantly different from that of an actual object.

SUMMARY

Embodiments of the present disclosure are made in view of the above-described issue and are directed to the provision of an image processing technique for designating an evaluation region on an image while referring to the image which is generated based on a captured image of an object and which has a gradation of color saturation close to that of the actual object.

An image processing apparatus according to the present disclosure includes an obtainment unit configured to obtain first image data obtained by capturing an image of an object, a generation unit configured to generate second image data representing a second image by performing conversion to maintain a specific gradation in a color saturation range in a case where a hue or color saturation of a region of interest in a first image represented by the first image data is converted according to a characteristic of a display unit, a conversion unit configured to perform conversion on the first image and the second image according to the characteristic of the display unit, and a display control unit configured to display the converted first image and the converted second image together on the display unit.

Further features of the present disclosure will become apparent from the following description of exemplary embodiments with reference to the attached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a hardware configuration of an image processing apparatus.

FIG. 2 is a block diagram illustrating a logical configuration of the image processing apparatus.

FIG. 3 is a flowchart illustrating processing executed by the image processing apparatus.

FIG. 4 is a flowchart illustrating processing for converting a pixel value into L*a*b* values.

FIG. 5 is a flowchart illustrating processing for determining a magnitude relationship of color saturation.

FIG. 6 is a flowchart illustrating processing for calculating maximum color saturation C_(MAX).

FIG. 7 is a block diagram illustrating a logical configuration of an image generation unit.

FIG. 8 is a flowchart illustrating processing for generating display image data.

FIG. 9 illustrates a display example of a display image.

FIG. 10 is a flowchart illustrating processing for calculating a color difference.

FIG. 11 illustrates a display example of a display image.

FIG. 12 is a block diagram illustrating a logical configuration of the image generation unit.

FIG. 13 is a flowchart illustrating processing for generating display image data.

FIG. 14A illustrates a color saturation conversion look-up table (LUT), and FIG. 14B illustrates a correspondence relationship between input color saturation and output color saturation in the color saturation conversion LUT.

FIG. 15 illustrates a user interface (UI) for designating a color saturation conversion method.

FIG. 16A, FIG. 16B, and FIG. 16C schematically illustrate a characteristic of the color saturation conversion LUT.

FIG. 17 is a block diagram illustrating a logical configuration of the image processing apparatus.

FIG. 18 is a flowchart illustrating processing executed by the image processing apparatus.

DESCRIPTION OF THE EMBODIMENTS

Exemplary embodiments of the present disclosure will be described below with reference to the attached drawings. The exemplary embodiments described below do not necessarily limit the present disclosure. Further, not all combinations of features described in the exemplary embodiments are deemed to be essential.

<Hardware Configuration of Image Processing Apparatus>

A first exemplary embodiment will be described. FIG. 1 is a block diagram illustrating a hardware configuration of an image processing apparatus 1. The image processing apparatus 1 includes a central processing unit (CPU) 101, a read-only memory (ROM) 102, and a random access memory (RAM) 103. The image processing apparatus 1 further includes a video card (VC) 104, a general interface (I/F) 105, a Serial Advanced Technology Attachment (SATA) I/F 106, and a network interface card (NIC) 107. The CPU 101 uses the RAM 103 as a work memory and executes an operating system (OS) and various programs stored in the ROM 102, a hard disk drive (HDD) 15, and the like. The CPU 101 controls each configuration via a system bus 108. Processing in each flowchart described below is executed by the CPU 101 loading a program code stored in the ROM 102, the HDD 15, and the like into the RAM 103. The VC 104 is connected to a display apparatus 17. The general I/F 105 is connected via a serial bus 11 to an image capturing apparatus 13 and an input device 12 such as a mouse and a keyboard. The SATA I/F 106 is connected via a serial bus 14 to the HDD 15 and a general drive 16 for reading and writing data to and from various storage media. The NIC 107 inputs and outputs information to and from an external apparatus. The CPU 101 uses the HDD 15 and the various storage media mounted on the general drive 16 as storage locations of various pieces of data. The CPU 101 displays a graphical user interface (GUI) provided by a program on the display apparatus 17 and receives an input such as a user instruction received via the input device 12.

<Logical Configuration of Image Processing Apparatus>

FIG. 2 is a block diagram illustrating a logical configuration of the image processing apparatus 1. The CPU 101 functions as a logical configuration illustrated in FIG. 2 by using the RAM 103 as the work memory and reading and executing a program stored in the ROM 102 or the HDD 15. It is not necessary for the CPU 101 to execute all processing described below, and the image processing apparatus 1 may be configured so that a part or all of the processing is executed by one or a plurality of processing circuits other than the CPU 101.

The image processing apparatus 1 includes an image obtainment unit 201, a color conversion unit 202, a color saturation determination unit 203, an image generation unit 204, a color difference calculation unit 205, a display control unit 206, and a designation reception unit 207. The image obtainment unit 201 obtains captured image data obtained by capturing an image of an object. The color conversion unit 202 converts pixel values (R, G, B) of each pixel included in a captured image represented by the captured image data into L*a*b* values (L*, a*, b*). The color saturation determination unit 203 determines a magnitude relationship between color saturation of a region of interest in the captured image and maximum color saturation which can be expressed by the display apparatus 17 with respect to a hue of the region of interest. The image generation unit 204 generates display image data representing a display image to be displayed on the display apparatus 17 based on a determination result regarding the color saturation of the region of interest. FIG. 7 is a block diagram illustrating a logical configuration of the image generation unit 204. The image generation unit 204 includes a hue rotation unit 2041 and an image conversion unit 2042. The hue rotation unit 2041 converts a hue of the captured image based on the determination result regarding the color saturation of the region of interest. The image conversion unit 2042 generates display image data based on the captured image data representing the captured image the hue of which is converted.

The designation reception unit 207 receives region information indicating a region designated by a user in a display image. The color difference calculation unit 205 calculates a color difference between the regions designated by the user. The display control unit 206 displays the display image and the color difference between the regions designated by the user on the display apparatus 17.

<Processing Executed by Image Processing Apparatus>

FIG. 3 is a flowchart illustrating processing executed by the image processing apparatus 1. The processing described below is started by a user instruction via the input device 12.

In step S301, the image obtainment unit 201 obtains the captured image data obtained by capturing an image of an object and reference white color signal values (X_(W), Y_(W), Z_(W)). The image obtainment unit 201 according to the present exemplary embodiment obtains the captured image data and the reference white color signal values (X_(W), Y_(W), Z_(W)) stored in advance in the HDD 15 therefrom.

In step S302, the display control unit 206 converts the pixel values (R, G, B) of each pixel included in the captured image represented by the captured image data into color signal values (R_(D), G_(D), B_(D)) corresponding to a characteristic of the display apparatus 17. In the conversion, high saturation color which cannot be expressed by the display apparatus 17 is compressed into a color gamut which can be expressed by the display apparatus 17. In the conversion, a color conversion look-up table (LUT) is used which stores a correspondence relationship between the pixel values (R, G, B) and the color signal values (R_(D), G_(D), B_(D)). The display control unit 206 displays a display image A which includes the color signal values (R_(D), G_(D), B_(D)) in each pixel on the display apparatus 17. The high saturation color is compressed in the display image A, so that a gradation of color saturation of the display image A may be significantly different from that of the image-captured object compared with a display image B described below.

In step S303, the designation reception unit 207 receives the region information indicating the region of interest designated by a user in the display image A. The region information according to the present exemplary embodiment is coordinates (x, y) on the display image A.

In step S304, the color conversion unit 202 converts the pixel values (R, G, B) of each pixel included in the captured image represented by the captured image data into the L*a*b* values (L*, a*, b*). The processing for converting the pixel values (R, G, B) into the L*a*b* values (L*, a*, b*) will be described in detail below. FIG. 4 is a flowchart illustrating the processing for converting the pixel values (R, G, B) into the L*a*b* values (L*, a*, b*).

In step S401, the color conversion unit 202 converts the pixel values (R, G, B) of a pixel of interest into XYZ values (X, Y, Z) according to Equation (1). Coefficients (m11 to m33) are determined in advance using a result of image capturing and colorimetry of a color chart.

$\begin{matrix} {\begin{pmatrix} X \\ Y \\ Z \end{pmatrix} = {{{M\begin{pmatrix} R \\ G \\ B \end{pmatrix}} \cdot M} = \begin{pmatrix} {m11} & {m12} & {m13} \\ {m21} & {m22} & {m23} \\ {m31} & {m32} & {m33} \end{pmatrix}}} & {{Equation}\mspace{14mu}(1)} \end{matrix}$

In step S402, the color conversion unit 202 converts the XYZ values (X, Y, Z) of the pixel of interest into the L*a*b* values (L*, a*, b*) according to Equations (2) to (5).

$\begin{matrix} \left. \begin{matrix} {{{XRate} = \left( {{X/X}w} \right)^{1/3}},} \\ {{{{where}\mspace{14mu}{X/{Xw}}} > 0.00856},{and}} \\ {{{XRate} = {{7.787 \star \left( {{X/X}w} \right)} + {16.0/116.0}}},} \\ {{{where}\mspace{14mu}{X/{Xw}}} \leq {0.00856.}} \end{matrix} \right\} & {{Equation}\mspace{14mu}(2)} \\ \left. \begin{matrix} {{{YRate} = \left( {Y/{Yw}} \right)^{1/3}},} \\ {{{{where}\mspace{14mu}{Y/{Yw}}} > 0.00856},{and}} \\ {{{YRate} = {{7.787 \star \left( {Y/{Yw}} \right)} + {16.0/116.0}}},} \\ {{{where}\mspace{14mu}{Y/{Yw}}} \leq {0.00856.}} \end{matrix} \right\} & {{Equation}\mspace{14mu}(3)} \\ \left. \begin{matrix} {{{ZRate} = \left( {Z/{Zw}} \right)^{1/3}},} \\ {{{{where}\mspace{14mu}{Z/{Zw}}} > 0.00856},{and}} \\ {{{ZRate} = {{7.787 \star \left( {Z/{Zw}} \right)} + {16.0/116.0}}},} \\ {{{where}\mspace{14mu}{Z/{Zw}}} \leq {0.00856.}} \end{matrix} \right\} & {{Equation}\mspace{14mu}(4)} \\ \left. \begin{matrix} {L^{*} = {{116*{YRate}} - 16.0}} \\ {a^{*} = {500*\left( {{XRate} - {YRate}} \right)}} \\ {b^{*} = {200*\left( {{YRate} - {ZRate}} \right)}} \end{matrix} \right\} & {{Equation}\mspace{14mu}(5)} \end{matrix}$

In step S403, the color conversion unit 202 determines whether the pixel values of all pixels in the captured image are converted into the L*a*b* values. In a case where all pixel values are not yet converted (NO in step S403), the color conversion unit 202 updates the pixel of interest and returns the processing to step S401. Whereas, in a case where the pixel values are all converted (YES in step S403), the color conversion unit 202 terminates the processing in step S304 and advances the processing to step S305.

In step S305, the color saturation determination unit 203 determines the magnitude relationship between the color saturation of the region of interest in the captured image and the maximum color saturation which can be expressed by the display apparatus 17 with respect to the hue of the region of interest. The processing for determining the magnitude relationship of the color saturation is described in detail below. FIG. 5 is a flowchart illustrating the processing for determining the magnitude relationship of the color saturation.

In step S501, the color saturation determination unit 203 calculates color saturation C and a hue H for all pixels in the captured image according to Equation (6).

$\begin{matrix} \left. \begin{matrix} {C = \sqrt{a^{*2} + b^{*2}}} \\ {H = {\tan^{- 1}\left( {b^{*}/a^{*}} \right)}} \end{matrix} \right\} & {{Equation}\mspace{14mu}(6)} \end{matrix}$

In step S502, the color saturation determination unit 203 calculates maximum color saturation C_(MAX) which can be expressed by the display apparatus 17 with respect to the hue H of the region of interest. The processing for calculating the maximum color saturation C_(MAX) will be described in detail below. FIG. 6 is a flowchart illustrating the processing for calculating the maximum color saturation C_(MAX). In step S601, the color saturation determination unit 203 obtains information indicating a characteristic of color which can be displayed by the display apparatus 17. Specifically, the color saturation determination unit 203 obtains information indicating a coordinate group on an outermost shell of the color gamut of the display apparatus 17 in an L*CH color space.

In step S602, the color saturation determination unit 203 obtains lightness L*, the color saturation C, and the hue H of the pixel of interest in the region of interest. In step S603, the color saturation determination unit 203 generates a vector passing through coordinates (L*, C, H) corresponding to the pixel of interest and coordinates (L*, 0, 0) on a lightness axis in the L*CH color space. In step S604, the color saturation determination unit 203 calculates an intersection point of a triangular element (a polygon) forming the outermost shell of the color gamut of the display apparatus 17 and the generated vector and records coordinates of the intersection point. The coordinates of the intersection point on a color saturation axis are the maximum color saturation C_(MAX) which can be expressed by the display apparatus 17 with respect to the hue H of the pixel of interest. In step S605, the color saturation determination unit 203 determines whether the maximum color saturation C_(MAX) is calculated for all pixels in the region of interest. In a case where the maximum color saturation C_(MAX) is not calculated for all pixels in the region of interest (NO in step S605), the color saturation determination unit 203 updates the pixel of interest and returns the processing to step S602. Whereas, in a case where the maximum color saturation C_(MAX) is calculated for all pixels in the region of interest (YES in step S605), the color saturation determination unit 203 terminates the processing in step S502 and advances the processing to step S503.

In step S503, the color saturation determination unit 203 compares the color saturation C with the maximum color saturation C_(MAX) for the pixel of interest in the region of interest. In a case where the maximum color saturation C_(MAX) is larger, a value of zero is stored as identification information of the pixel of interest, whereas in a case where the color saturation C is larger, a value of one is stored as the identification information of the pixel of interest. In step S504, the color saturation determination unit 203 determines whether determination regarding the color saturation is performed for all pixels in the region of interest. In a case where the determination is not performed for all pixels in the region of interest (NO in step S504), the color saturation determination unit 203 updates the pixel of interest and returns the processing to step S503. Whereas in a case where the determination is performed for all pixels in the region of interest (YES in step S504), the color saturation determination unit 203 terminates the processing in step S305 and advances the processing to step S306.

In step S306, the image generation unit 204 generates display image data representing the display image B to be displayed on the display apparatus 17 based on the determination result regarding the color saturation of the region of interest. The processing for generating the display image data representing the display image B will be described in detail below. FIG. 8 is a flowchart illustrating the processing for generating the display image data representing the display image B.

In step S801, the hue rotation unit 2041 obtains the lightness L*, the color saturation C, the hue H, and the identification information as the determination result of the color saturation for all pixels in the region of interest. In step S802, the hue rotation unit 2041 calculates a representative hue H_(REP) representing hues of pixels the identification information of which is one in the region of interest. The representative hue H_(REP) according to the present exemplary embodiment is an average value the hues of pixels the identification information of which is one. The identification information of one indicates that the color saturation C is outside the color gamut of the display apparatus 17, and the identification information of zero indicates that the color saturation C is within the color gamut of the display apparatus 17.

In step S803, the hue rotation unit 2041 obtains a hue H_(MAX) in which the display apparatus 17 can express the maximum color saturation from the color characteristic information of the display apparatus 17. Further, the hue rotation unit 2041 calculates a difference between the representative hue H_(REP) and the hue H_(MAX) as a rotation angle ΔH for rotating the hue of the captured image. The rotation angle ΔH is calculated according to Equation (7).

ΔH=H _(MAX) −H _(REP)  Equation (7)

In step S804, the hue rotation unit 2041 converts the hues H of all pixels in the captured image into hues HR according to the rotation angle ΔH calculated by Equation (8).

$\begin{matrix} {\begin{pmatrix} L^{*} \\ C \\ H_{R} \end{pmatrix} = \begin{pmatrix} L^{*} \\ C \\ {H + {\Delta H}} \end{pmatrix}} & {{Equation}\mspace{14mu}(8)} \end{matrix}$

In step S805, the image conversion unit 2042 converts L*CH values (L*, C, HR) of the pixel of interest in the captured image into the XYZ values (X, Y, Z). Specifically, the image conversion unit 2042 converts the L*CH values (L*, C, HR) into the L*a*b* values (L*, a*, b*) according to Equation (9). Further, the image conversion unit 2042 converts the L*a*b* values (L*, a*, b*) into the XYZ values (X, Y, Z) by performing conversion inverse to the conversion in step S402.

$\begin{matrix} {\begin{pmatrix} L^{*} \\ a^{*} \\ b^{*} \end{pmatrix} = \begin{pmatrix} L^{*} \\ {C*{\cos\left( {H*{\pi/180}} \right)}} \\ {C*{\sin\left( {H*{\pi/180}} \right)}} \end{pmatrix}} & {{Equation}\mspace{14mu}(9)} \end{matrix}$

In step S806, the image conversion unit 2042 converts the XYZ values (X, Y, Z) of the pixel of interest into the color signal values (R_(D), G_(D), B_(D)) corresponding to the characteristic of the display apparatus 17. In the conversion, a color conversion LUT is used which stores a correspondence relationship between the XYZ values (X, Y, Z) and the color signal values (R_(D), G_(D), B_(D)). In step S807, the image conversion unit 2042 determines whether the L*CH values of all pixels in the captured image are converted into the color signal values (R_(D), G_(D), B_(D)). In a case where all of the L*CH values are not yet converted (NO in step S807), the image conversion unit 2042 updates the pixel of interest and returns the processing to step S805. Whereas, in a case where all of the L*CH values are converted (YES in step S807), the image conversion unit 2042 terminates the processing in step S306 and advances the processing to step S307.

The display image B is a display image which is obtained by the above-described processing in step S306 and has the color signal values (R_(D), G_(D), B_(D)) in each pixel. The display image B is an image in which reproduction of the color saturation is prioritized over the hue and uses the maximum color saturation which can be output by the display apparatus 17, so that a gradation of the color saturation in the region of interest is close to that of the image-captured object compared with the above-described display image A.

In step S307, the display control unit 206 displays the display image B and the display image A side by side. FIG. 9 illustrates a display example of the display images. A window 901 displays the display image A, and a window 902 displays the display image B. An execution button 903 is used to execute calculation of a color difference, and an end button 904 is used to end the processing. A rectangle 905 indicates the region of interest, and a triangle 906 indicates a reference region a color difference of which from the region of interest is to be calculated. The region of interest and the reference region are designated via the input device 12, and the designation reception unit 207 receives the region information about the region of interest and the reference region. If a user presses the execution button 903, the processing proceeds to step S308.

In step S308, the color difference calculation unit 205 calculates the color difference between the region of interest and the reference region. The processing for calculating the color difference between the regions will be described in detail below. FIG. 10 is a flowchart illustrating the processing for calculating the color difference between the regions.

In step S1001, the color difference calculation unit 205 obtains coordinates of the region of interest and coordinates of the reference region. In step S1002, the color difference calculation unit 205 calculates an average value of the L*a*b* values (L*₁, a*₁, b*₁) in the region of interest and an average value of L*a*b* values (L*₂, a*₂, b*₂) in the reference region. In step S1003, the color difference calculation unit 205 calculates a color difference ΔE between the average value of the L*a*b* values in the region of interest and the average value of the L*a*b* values in the reference region according to Equation (10).

ΔE=√{square root over ((L* ₂ −L* ₁)²+(a* ₂ −a* ₁)²+(b* ₂ −b* ₁)²)}  Equation (10)

In step S1004, the display control unit 206 displays the color difference ΔE in a value display region 907 in FIG. 9.

<Effect of First Exemplary Embodiment>

As described above, the image processing apparatus according to the present exemplary embodiment obtains image data obtained by capturing an image of an object. The image processing apparatus generates image data by converting the hue or the color saturation of the region of interest in the image represented by the obtained image data so that a specific gradation in the color saturation range is maintained in a case where conversion is performed according to the characteristic of the display unit. The image processing apparatus performs conversion on the image represented by the obtained image data and the image represented by the generated image data according to the characteristic of the display apparatus. The image processing apparatus displays the converted two images together on the display apparatus. Accordingly, a user can designate an evaluation region on the image while referring to the image which is generated based on the captured image of the object and which has the gradation of the color saturation close to the actual object.

<Modification>

According to the first exemplary embodiment, the image obtainment unit 201 obtains the captured image data from the HDD 15. However, the image obtainment unit 201 may control the image capturing apparatus 13 to capture an image of an object and obtain the captured image data. In addition, the image obtainment unit 201 may obtain a color signal value of a reference white point designated by a user on the display image A as the color signal values (X_(W), Y_(W), Z_(W)) without obtaining the reference white color signal values (X_(W), Y_(W), Z_(W)) from the HDD 15.

According to the first exemplary embodiment, the maximum color saturation C_(MAX) is calculated by the processing in steps S601 to S605. However, a LUT storing a correspondence relationship between the hue H and the maximum color saturation C_(MAX) may be generated in advance and used.

According to the first exemplary embodiment, the maximum color saturation C_(MAX) is calculated by the processing in steps S601 to S605. However, the maximum color saturation C_(MAX) which is larger than the color saturation C and which has corresponding hue closest to the hue H may be selected from the maximum color saturation of each of all the hues.

According to the first exemplary embodiment, the average values of the L*a*b* values are respectively calculated for the region of interest and the reference region. However, average values of RGB values and XYZ values may be respectively calculated and then converted into L*a*b* values.

According to the first exemplary embodiment, the color difference ΔE is calculated for evaluating the color difference between regions. However, any other known value may be used as long as the color difference can be evaluated by the value.

According to the first exemplary embodiment, the display image A and the display image B are displayed side by side. However, a region designated by a user in the display image A may be displayed by being replaced with a corresponding region in the display image B. In this case, in step S303, the designation reception unit 207 receives replacement region information indicating a region which is displayed by being replaced with the display image B in the display image A. In step S307, the display control unit 206 replaces a part of the display image A with a part of the display image B based on the replacement region information and displays the display image. FIG. 11 illustrates a display example of the display image. A window 1101 displays the display image. An execution button 1102 is used to execute calculation of a color difference, and an end button 1103 is used to end the processing. A rectangle 1104 indicates the region of interest, and a triangle 1105 indicates a reference region a color difference of which from the region of interest is to be calculated. A region surrounded by a dotted line 1106 indicates a region replaced with the display image B in the display image A. Accordingly, even in a case where only one image can be displayed, a user can designate an evaluation region on the image while referring to the image having the gradation of the color saturation close to the actual object. A region to be replaced and displayed is not limited to a region designated by a user and may be, for example, a region a color difference of which from the region of interest is a threshold value or less. Further, a part of the display image B may be superimposed on a part of the display image A and displayed instead of replacing the part of the display image A with the part of the display image B.

According to the first exemplary embodiment, an image is displayed by being converted to the hue in which the display apparatus 17 can output the maximum color saturation. According to a second exemplary embodiment, color conversion is performed on an image to maintain a gradation of high saturation color, and a display image is displayed without converting a hue. A hardware configuration of an image processing apparatus 1 according to the present exemplary embodiment is similar to that according to the first exemplary embodiment, so that the description thereof is omitted. A difference between the present exemplary embodiment and the first exemplary embodiment will be mainly described below. The same configuration will be described with the same reference numeral.

<Logical Configuration of Image Generation Unit 204>

The image generation unit 204 generates display image data representing a display image to be displayed on the display apparatus 17 based on a determination result regarding color saturation of a region of interest. FIG. 12 is a block diagram illustrating a logical configuration of the image generation unit 204. The image generation unit 204 includes a color saturation conversion unit 2043 and the image conversion unit 2042. The color saturation conversion unit 2043 performs color conversion on a captured image to maintain a gradation of relatively high saturation color in a color saturation range which can be displayed by the display apparatus 17 based on the determination result regarding the color saturation of the region of interest. The image conversion unit 2042 generates display image data based on the captured image data representing the captured image the color saturation of which is converted.

<Processing for Generating Display Image Data>

In step S306, the image generation unit 204 generates the display image data representing the display image B to be displayed on the display apparatus 17 based on the determination result regarding the color saturation of the region of interest. The processing for generating the display image data representing the display image B will be described in detail below. FIG. 13 is a flowchart illustrating the processing for generating the display image data representing the display image B.

In step S801, the color saturation conversion unit 2043 obtains the lightness L*, the color saturation C, the hue H, and the identification information as the determination result of the color saturation for all pixels in the region of interest. In step S1301, the color saturation conversion unit 2043 converts color saturation of the pixel the identification information of which is one in the region of interest using a color saturation conversion LUT. FIG. 14A illustrates the color saturation conversion LUT. The color saturation conversion LUT stores a correspondence relationship between color saturation to be input and color saturation to be output. FIG. 14B illustrates the correspondence relationship between the input color saturation and the output color saturation in the color saturation conversion LUT. The color saturation conversion LUT stores the correspondence relationship between the input color saturation and the output color saturation to maintain the gradation of relatively high saturation color in the color saturation range which can be displayed by the display apparatus 17 as illustrated in FIGS. 14A and 14B. Values in FIG. 14A are relative values with respect to the maximum color saturation of the display apparatus 17 corresponding to a relevant hue. The processing in steps S805 to S807 by the image conversion unit 2042 is similar to that according to the first exemplary embodiment, so that the description thereof will be omitted.

<Effect of Second Exemplary Embodiment>

As described above, the image processing apparatus according to the present exemplary embodiment performs color saturation conversion on an image to maintain a gradation of relatively high saturation color in the color saturation range which can be displayed by the display apparatus and displays a display image. Accordingly, a user can designate an evaluation region on the image while referring to the image which is generated by maintaining the hue and which has the gradation of the color saturation close to an actual object.

<Modification>

According to the second exemplary embodiment, color saturation conversion is performed using one type of the color saturation conversion LUT determined in advance. However, a color saturation conversion LUT to be used in color saturation conversion may be selected from a plurality of types of color saturation conversion LUTs according to an application. FIG. 15 illustrates a user interface (UI) for designating a color saturation conversion method. A combo box 1501 is used to designate the color saturation range the gradation is to be maintained to perform color saturation conversion. A combo box 1502 is used to designate a size of the color saturation range in which the gradation is to be maintained. A combo box 1503 is used to designate the color saturation range according to a hue of an object. An execution button 1504 is used to execute color conversion, and an end button 1505 is used to end the processing.

FIGS. 16A to 16C schematically illustrate characteristics of the respective color saturation conversion LUTs. FIG. 16A illustrates the characteristic of the color saturation conversion LUT corresponding to the combo box 1501. The maximum color saturation that the display apparatus 17 can output is different for each hue. In other words, a relatively high color saturation range in the color saturation range which can be output by the display apparatus 17 is different for each hue. In the combo box 1501, a user can designate the color saturation range in which the gradation is to be maintained. FIG. 16B illustrates the characteristic of the color saturation conversion LUT corresponding to the combo box 1502. In the combo box 1502, a user can designate a size of the color saturation range in which the gradation is to be maintained. FIG. 16C illustrates the characteristic of the color saturation conversion LUT corresponding to the combo box 1503. In the combo box 1503, a user can designate the color saturation range in which the gradation is to be maintained by directly designating the hue of the object. As described above, the color saturation conversion LUT to be used for color saturation conversion is designated from a plurality of types of color saturation conversion LUTs, and thus the color saturation conversion suitable for color of an object can be performed.

According to the above-described exemplary embodiments, a pixel value of a captured image is converted into L*a*b* values, and a hue or color saturation is converted based on the L*a*b* values. According to a third exemplary embodiment, display image data is generated using a color conversion LUT storing a correspondence relationship between a pixel value of a captured image and a color signal value after being subjected to conversion of a hue or color saturation. A hardware configuration of an image processing apparatus 1 according to the present exemplary embodiment is similar to that according to the first exemplary embodiment, so that the description thereof will be omitted. A difference between the present exemplary embodiment and the first exemplary embodiment will be mainly described below. The same configuration will be described with the same reference numeral.

<Logical Configuration of Image Processing Apparatus>

FIG. 17 is a block diagram illustrating a logical configuration of the image processing apparatus 1. The CPU 101 functions as a logical configuration illustrated in FIG. 17 by using the RAM 103 as the work memory and reading and executing a program stored in the ROM 102 or the HDD 15. It is not necessary for the CPU 101 to execute all processing described below, and the image processing apparatus 1 may be configured so that a part or all of the processing is executed by one or a plurality of processing circuits other than the CPU 101.

The image processing apparatus 1 includes the image obtainment unit 201, an image generation unit 1701, the color difference calculation unit 205, the display control unit 206, and the designation reception unit 207. The image generation unit 1701 generates display image data using a color conversion LUT storing a correspondence relationship between a pixel value of a captured image and a color signal value after being subjected to conversion of a hue or color saturation.

<Processing Executed by Image Processing Apparatus>

FIG. 18 is a flowchart illustrating processing executed by the image processing apparatus 1. The processing described below is started by a user instruction via the input device 12. The processing in steps S301 to S303, S307, and S308 is similar to that according to the above-described exemplary embodiments, and thus the description thereof will omitted.

In step S1801, the image generation unit 1701 converts pixel values (R, G, B) of each pixel included in a captured image into color signal values (R_(D), G_(D), B_(D)) corresponding to the characteristic of the display apparatus 17 using the color conversion LUT. The color conversion LUT used in this processing is generated and stored in the HDD 15 in advance. The color conversion LUT stores a correspondence relationship between pixel values (R, G, B) corresponding to each grid point equally arranged in an RGB color space dependent on the image capturing apparatus 13 and color signal values (R_(D), G_(D), B_(D)) a hue or color saturation of which is converted by the above-described processing in step S306. The color conversion LUT can be generated in advance by performing the above-described processing in steps S304 and S306 with respect to the pixel values (R, G, B) corresponding to each grid point equally arranged in the RGB color space dependent on the image capturing apparatus 13.

<Effect of Third Exemplary Embodiment>

As described above, the image processing apparatus according to the present exemplary embodiment generates display image data using the color conversion LUT storing the correspondence relationship between a pixel value of a captured image and a color signal value after being subjected to conversion of a hue or color saturation. Accordingly, the image processing apparatus can perform color conversion which maintains a gradation of high saturation color without performing hue rotation processing and thus can reduce a calculation cost.

<Modification>

According to the third exemplary embodiment, the color conversion LUT storing the correspondence relationship between the pixel value of the captured image and the color signal value after being subjected to conversion of the hue or the color saturation is used. However, conversion using a matrix and gamma conversion may be performed instead of conversion using the color conversion LUT.

According to embodiments of the present disclosure, a user can designate an evaluation region on an image while referring to the image which is generated based on a captured image of an object and which has a gradation of color saturation close to the actual object.

Other Embodiments

Embodiment(s) of the present disclosure can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (B_(D))™), a flash memory device, a memory card, and the like.

While the present disclosure includes exemplary embodiments, it is to be understood that the disclosure is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.

This application claims the benefit of Japanese Patent Application No. 2019-197998, filed Oct. 30, 2019, which is hereby incorporated by reference herein in its entirety. 

What is claimed is:
 1. An image processing apparatus comprising: an obtainment unit configured to obtain first image data obtained by capturing an image of an object; a generation unit configured to generate second image data representing a second image by performing conversion to maintain a specific gradation in a color saturation range in a case where a hue or color saturation of a region of interest in a first image represented by the first image data is converted according to a characteristic of a display unit; a conversion unit configured to perform conversion on the first image and the second image according to the characteristic of the display unit; and a display control unit configured to display the converted first image and the converted second image together on the display unit.
 2. The image processing apparatus according to claim 1, wherein the specific gradation is a gradation corresponding to high saturation color.
 3. The image processing apparatus according to claim 1, wherein the generation unit performs conversion on color of the region of interest by prioritizing the color saturation over the hue.
 4. The image processing apparatus according to claim 3, wherein the region of interest is a region including a plurality of pixels, and wherein the image processing apparatus further comprises a determination unit configured to calculate a representative hue in the region of interest and to determine whether to perform conversion on color with respect to each of the plurality of pixels according to the representative hue.
 5. The image processing apparatus according to claim 4, wherein the determination unit calculates an average value of a hue corresponding to each of the plurality of pixels as the representative hue.
 6. The image processing apparatus according to claim 4, wherein the determination unit determines whether to perform conversion on color with respect to each of the plurality of pixels by comparing maximum color saturation which corresponds to the representative hue and can be displayed by the display unit with color saturation corresponding to each of the plurality of pixels.
 7. The image processing apparatus according to claim 4, wherein the generation unit performs conversion on the hue of the region of interest so that the representative hue is to be a hue corresponding to maximum color saturation which can be displayed by the display unit.
 8. The image processing apparatus according to claim 1, wherein the generation unit performs conversion on the hue of the region of interest in the first image.
 9. The image processing apparatus according to claim 1, wherein the generation unit performs conversion on the color saturation of the region of interest in the first image.
 10. The image processing apparatus according to claim 9, wherein the generation unit performs conversion on the color saturation of the region of interest in the first image using a look-up table for performing color conversion to maintain a specific gradation corresponding to high saturation color.
 11. The image processing apparatus according to claim 10, wherein the generation unit selects the look-up table to be used for conversion of the color saturation from a plurality of types of look-up tables according to a user instruction.
 12. The image processing apparatus according to claim 11, wherein the plurality of types of look-up tables includes a plurality of types of look-up tables having different color saturation ranges in which a gradation is to be maintained.
 13. The image processing apparatus according to claim 11, wherein the user instruction is an instruction to specify a hue of the object.
 14. A method for processing an image, the method comprising: obtaining first image data obtained by capturing an image of an object; generating second image data representing a second image by performing conversion to maintain a specific gradation in a color saturation range in a case where a hue or color saturation of a region of interest in a first image represented by the first image data is converted according to a characteristic of a display unit; performing conversion on the first image and the second image according to the characteristic of the display unit; and displaying the converted first image and the converted second image together on the display unit.
 15. A non-transitory computer-readable storage medium storing instructions that, when executed by a computer, cause the computer to perform a method for processing an image, the method comprising: obtaining first image data obtained by capturing an image of an object; generating second image data representing a second image by performing conversion to maintain a specific gradation in a color saturation range in a case where a hue or color saturation of a region of interest in a first image represented by the first image data is converted according to a characteristic of a display unit; performing conversion on the first image and the second image according to the characteristic of the display unit; and displaying the converted first image and the converted second image together on the display unit. 